﻿'#################################################################
'     Программа спроектирована и написана Чернявским Андреем
'              для курсовой работы по информатике,
'        весь код, от начала и до конца написан вручную.
' SVN проекта находится на http://code.google.com/p/testviewerbf/
'#################################################################
Module Module1
    'Обявление переменных.
    'Переменная для загрузки и сохранения настроек.
    Dim setting As New My.MySettings
    Public strokav(6) As String
    Public timerdefoult(3) As String
    Public derictory As Integer
    Public Sub testname()
        'Загрузка тестов на выбор.
        Dim FileNum1 As Short
        Dim testname As String
        FileNum1 = FreeFile()
        'Проверка пути загрузки тестов и настроек в соответствии с настройками программы.
        If setting.der2 = True Then
            derictory = 1
        End If
        If derictory = 0 Then
            FileOpen(FileNum1, My.Application.Info.DirectoryPath & "\data\testname", OpenMode.Input)
        Else
            FileOpen(FileNum1, setting.der3 & "\data\testname", OpenMode.Input)
        End If
        Do Until EOF(FileNum1)
            'Присваивание значений.
            testname = LineInput(FileNum1)
            EnterForm.ComboBox1.Items.Add(testname)
        Loop
        FileClose(FileNum1)
    End Sub
    Public Sub settingdefoult()
        'Загрузка тестов на выбор.
        Dim FileNum1 As Short
        Dim passadmin As String = "adm"
        FileNum1 = FreeFile()
        'Проверка пути загрузки тестов и настроек в соответствии с настройками программы.
        If derictory = 0 Then
            FileOpen(FileNum1, My.Application.Info.DirectoryPath & "\data\config.conf", OpenMode.Input)
        Else
            FileOpen(FileNum1, setting.der3 & "\data\config.conf", OpenMode.Input)
        End If
        Do Until EOF(FileNum1)
            passadmin = LineInput(FileNum1)
        Loop
        FileClose(FileNum1)
        'Присваивание значений.
        passadmin = passadmin.Replace("Admin_enter_text = ", "")
        EnterForm.admp = passadmin
    End Sub
    Public Sub vop1()
        'Загрузка первого вопроса при загрузке формы.
        Dim FileNum As Short
        Dim txt As String
        Dim ns As Integer = 0
        FileNum = FreeFile()
        'Проверка пути загрузки тестов и настроек в соответствии с настройками программы.
        If derictory = 0 Then
            FileOpen(FileNum, My.Application.Info.DirectoryPath & "\data\testbox\" & EnterForm.ComboBox1.Text & "\" & Testbox.vopros & "", OpenMode.Input)
        Else
            FileOpen(FileNum, setting.der3 & "\data\testbox\" & EnterForm.ComboBox1.Text & "\" & Testbox.vopros & "", OpenMode.Input)
        End If
        Do Until EOF(FileNum)
            txt = LineInput(FileNum)
            If ns = 6 Then
                GoTo 1
            End If
            ns = ns + 1
            strokav(ns) = txt
            strokav(ns) = txt
            strokav(ns) = txt
            strokav(ns) = txt
            strokav(ns) = txt
            strokav(ns) = txt
        Loop
1:
        'Присваивание значений.
        FileClose(FileNum)
        Testbox.Label1.Text = strokav(1)
        Testbox.RadioButton1.Text = strokav(2)
        Testbox.RadioButton2.Text = strokav(3)
        Testbox.RadioButton3.Text = strokav(4)
        Testbox.RadioButton4.Text = strokav(5)
    End Sub
    Public Sub zach()
        'Обявление переменных.
        Dim nuu As String
        Dim pervop As Integer
        nuu = EndForm.TextBox1.Text
        If Testbox.vopros = 1 Then
            pervop = Module1.strokav(6)
        Else
            pervop = Testbox.stroka(6)
        End If
        'Определение, правильный или не правильный ответ выбран.
        If Testbox.RadioButton1.Checked = True And pervop = 1 Then
            Testbox.bal = Testbox.bal + 1
            EndForm.TextBox1.Text = EndForm.TextBox1.Text & Testbox.vopros & " (+) отвечено правильно" & vbCrLf
        End If
        If Testbox.RadioButton2.Checked = True And pervop = 2 Then
            Testbox.bal = Testbox.bal + 1
            EndForm.TextBox1.Text = EndForm.TextBox1.Text & Testbox.vopros & " (+) отвечено правильно" & vbCrLf
        End If
        If Testbox.RadioButton3.Checked = True And pervop = 3 Then
            Testbox.bal = Testbox.bal + 1
            EndForm.TextBox1.Text = EndForm.TextBox1.Text & Testbox.vopros & " (+) отвечено правильно" & vbCrLf
        End If
        If Testbox.RadioButton4.Checked = True And pervop = 4 Then
            Testbox.bal = Testbox.bal + 1
            EndForm.TextBox1.Text = EndForm.TextBox1.Text & Testbox.vopros & " (+) отвечено правильно" & vbCrLf
        End If
        If EndForm.TextBox1.Text = nuu Then
            EndForm.TextBox1.Text = EndForm.TextBox1.Text & Testbox.vopros & " (-) отвечено неправильно" & vbCrLf
        End If
    End Sub
    Public Sub maximumvopros()
        'Загрузка vopX вопроса.
        Dim FileNum2 As Short
        Dim txt2 As String
        Dim vopr As String
        FileNum2 = FreeFile()
        'Проверка пути загрузки тестов и настроек в соответствии с настройками программы.
        If derictory = 0 Then
            FileOpen(FileNum2, My.Application.Info.DirectoryPath & "\data\testbox\" & EnterForm.ComboBox1.Text & "\setting.conf", OpenMode.Input)
        Else
            FileOpen(FileNum2, setting.der3 & "\data\testbox\" & EnterForm.ComboBox1.Text & "\setting.conf", OpenMode.Input)
        End If
        Do Until EOF(FileNum2)
            'Присваивание значений.
            txt2 = LineInput(FileNum2)
            vopr = txt2
            txt2 = txt2.Replace("Max_vopros_test = ", "")
            Testbox.maxvopros = txt2
        Loop
        FileClose(FileNum2)
    End Sub
    Public Sub settingload()
        'Загрузка настроек программы.
        AdminSetting.RadioButton1.Checked = setting.savemetod
        AdminSetting.RadioButton2.Checked = setting.savemetod2
        AdminSetting.TextBox1.Text = setting.text1
        AdminSetting.TextBox2.Text = setting.text2
        AdminSetting.TextBox3.Text = setting.text3
        AdminSetting.TextBox4.Text = setting.text4
        AdminSetting.TextBox5.Text = setting.text21
        AdminSetting.TextBox6.Text = setting.text22
        AdminSetting.TextBox7.Text = setting.text23
        AdminSetting.CheckBox1.Checked = setting.checkl
        AdminSetting.RadioButton3.Checked = setting.der1
        AdminSetting.RadioButton4.Checked = setting.der2
        AdminSetting.TextBox8.Text = setting.der3
    End Sub
End Module
